/**
 * @file   Constants.java
 * @date   2012-11-12下午5:49:18
 * @author User
 */
package com.gzceb.zhgjj.model;

import java.util.HashMap;
import java.util.Map;

/**
 * <p>常量类。</p>
 *
 * @date   2012-11-12下午5:49:18 
 * @author liqing
 * @description 接口中涉及的各种常量
 */
public interface Constants {

	public static final String BANKID = "2260";
	
	//接口的交易代码
	public static final String TXCODE_TTF001 = "TTF001";
	public static final String TXCODE_TAG003 = "TAG003";
	public static final String TXCODE_PUTFILE = "PUTFILE";
	public static final String TXCODE_SAP001 = "SAP001";
	public static final String TXCODE_TAP002 = "TAP002";
	
	//PUTFILE接口中的文件类型
	public static final String FILETYPE_ACCTOPN = "1"; //开户授权文件
	public static final String FILETYPE_WITHDRAW = "2";  //支取授权文件
	public static final String FILETYPE_RADIXCHK = "6";  //基数核定文件
	public static final String FILETYPE_CNLAPPRV = "4";  //撤销授权文件
	public static final String FILETYPE_ERRRECONC = "9"; //对账错误文件
	
	//PUTFILE接口文件传输报文定义
	// 公共
	public static final String MSG_RSPCODE_READY = "0"; // 结构体响应码：接收方准备就绪，同意接收
	public static final String MSG_RSPCODE_REJECT = "1";	// 结构体响应码：接收方拒绝接收
	
	public static final String MSG_RSPCODE_WRONG = "2";	// 结构体响应码：本方操作失败无法接收或发送
	
	public static final String MSG_RSPCODE_LAST = "0";   // 结构体响应码：发送最后一个包
	public static final String MSG_RSPCODE_CONTINUE = "1";   // 结构体响应码：还有后续文件数据发送
	
	public static final String MSG_RSPCODE_OVER = "0";  // 4号结构体响应码： 接收正常结束
	public static final String MSG_RSPCODE_NEXT = "1";  // 4号结构体响应码：接收成功，准备接收下一个
	
	// 1~4结构体用来传输错误文件的授权文件
	public static final String MSG_1_DGTYPE = "1";        // 1号结构体报文类型
	public static final String MSG_1_DGLENGTH = "00086";  // 1号结构体报文长度
	
	public static final String MSG_2_DGTYPE = "2";        // 2号结构体报文类型
	public static final String MSG_2_DGLENGTH = "00007";  // 2号结构体报文长度
	
	
	public static final String MSG_3_DGTYPE = "3";		// 3号结构体报文类型
	public static final int MSG_3_DGLENGTH = 7;         // 3号结构体除文件数据外的长度
	public static final int MSG_3_DATABUF = 1024;       // 3号结构体中文件数据长度
	
	
	public static final String MSG_4_DGTYPE = "4";      // 4号结构体报文类型
	public static final String MSG_4_DGLENGTH = "00007";  // 4号结构体报文长度
	
	
	// 5~8号结构体用来传输错误授权文件中列出的错误文件
	public static final String MSG_5_DGTYPE = "5";		// 5号结构体报文类型
	public static final String MSG_5_DGLENGTH = "00089";   // 5号结构体报文长度
	
	public static final String MSG_6_DGTYPE = "6";      // 6号结构体报文类型
	public static final String MSG_6_DGLENGTH = "00010";   // 6号结构体报文长度
	
	public static final String MSG_7_DGTYPE = "7";   // 7号结构体报文类型
	public static final String MSG_7_DGLENGTH = "04106";   // 7号结构体报文长度
	
	public static final String MSG_8_DGTYPE = "8";   // 8号结构体报文类型
	public static final String MSG_8_DGLENGTH = "00010";  // 8号结构体报文长度
	
	public static String MSG_1_STRUCT = Constants.MSG_1_DGTYPE + Constants.MSG_1_DGLENGTH;
	public static String MSG_2_STRUCT = Constants.MSG_2_DGTYPE + Constants.MSG_2_DGLENGTH;
	public static String MSG_3_STRUCT = Constants.MSG_3_DGTYPE ;  // 3号结构体的报文长度需要计算才能出
	public static String MSG_4_STRUCT = Constants.MSG_4_DGTYPE + Constants.MSG_4_DGLENGTH;
	
	
	
	
	//所有接口的响应码
	public static final String RESPCODE_SUC = "0000";  //成功
	//TODO 失败的值需要中心提供
	public static final String RESPCODE_FAIL = "1111";  //失败
	
	public static final String SUC_FLAG_SUC = "0";   //成功标志
	public static final String SUC_FLAG_FAIL = "1";  //失败标志
	
	
}
